package com.cq.hd.common.enums.biz;

import lombok.Getter;

/**
 * @description: 自然人证件类型: 00：身份证，01：护照，02：军官证，03：士兵证，04：回乡证，05：户口本，
 * 06：外国护照，07：其他，08：暂住证，09：警官证，10：文职干部证，11：港澳台同胞通行证，13：外国人居留证，14：台胞证，15：港澳台居住证
 * @author: mYunYu
 * @date: 2021/8/23 14:28
 * @version: v1.0
 */
public enum CertTypeEnum {

    SFZ("00", "身份证"),
    HZ("01", "护照"),
    JUNGZ("02", "军官证"),
    SBZ("03", "士兵证"),
    HXZ("04", "回乡证"),
    HKB("05", "户口本"),
    WGHZ("06", "外国护照"),
    QT("07", "其他"),
    ZZZ("08", "暂住证"),
    JGZ("09", "警官证"),
    WZGBZ("10", "文职干部证"),
    GATTBTXZ("11", "港澳台同胞通行证"),
    WGRJLZ("13", "外国人居留证"),
    TBZ("14", "台胞证"),
    GATJZZ("15", "港澳台居住证"),
    ;

    @Getter
    private final String value;

    @Getter
    private final String name;

    CertTypeEnum(String value, String name) {
        this.value = value;
        this.name = name;
    }

    public static CertTypeEnum typeOfValue(String value) {
        CertTypeEnum[] values = CertTypeEnum.values();
        for (CertTypeEnum v : values) {
            if (v.value.equals(value)) {
                return v;
            }
        }
        return null;
    }

    public static CertTypeEnum typeOfName(String name) {
        CertTypeEnum[] values = CertTypeEnum.values();
        for (CertTypeEnum v : values) {
            if (v.name.equals(name)) {
                return v;
            }
        }
        return null;
    }

}
